Fractional coloring is a topic in a young branch of graph theory known as fractional graph theory. It is a generalization of ordinary graph coloring. In a traditional graph coloring, each vertex in a graph is assigned some color, and adjacent vertices — those connected by edges — must be assigned different colors. In a fractional coloring however, a set of colors is assigned to each vertex of a graph. The requirement about adjacent vertices still holds, so if two vertices are joined by an edge, they must have no colors in common.
Fractional graph coloring can be viewed as the linear programming relaxation of traditional graph coloring. Indeed, fractional coloring problems are much more amenable to a linear programming approach than traditional coloring problems.
Contents |
A b-fold coloring of a graph G is an assignment of sets of size b to vertices of a graph such that adjacent vertices receive disjoint sets. An a:b-coloring is a b-fold coloring out of a available colors. The b-fold chromatic number χb(G) is the least a such that an a:b-coloring exists.
The fractional chromatic number χf(G) is defined to be
Note that the limit exists because χb(G) is subadditive, meaning χa+b(G) ≤ χa(G) + χb(G).
Some properties of χf(G):
and
Here n(G) is the order of G, α(G) is the independence number, ω(G) is the clique number, and χ(G) is the chromatic number.
The fractional chromatic number χf(G) of a graph G can be obtained as a solution to a linear program. Let (G) be the set of all independent sets of G, and let (G,x) be the set of all those independent sets which include vertex x. For each independent set I, make a nonnegative real variable xI. Then χf(G) is the minimum value of
The linear program has a dual that calculates "fractional clique number", a relaxation to the rationals of the integer concept of clique number. The strong duality theorem of linear programming guarantees that solutions to both linear programs do exist. However, each linear program has size that is exponential in the number of vertices of G, and computing the fractional chromatic number of a graph is NP-hard.[1] This stands in contrast to the problem of fractionally coloring the edges of a graph, which can be solved in polynomial time thanks to the simple structure of the matching polytope.[2]
Applications of fractional graph coloring include activity scheduling. In this case, the graph G is a conflict graph: an edge in G between the nodes u and v denotes that u and v cannot be active simultaneously. Put otherwise, the set of nodes that are active simultaneously must be an independent set in graph G.
An optimal fractional graph coloring in G then provides a shortest possible schedule, such that each node is active for (at least) 1 time unit in total, and at any point in time the set of active nodes is an independent set. If we have a solution x to the above linear program, we simply traverse all independent sets I in an arbitrary order. For each I, we let the nodes in I be active for time units; meanwhile, each node not in I is inactive.
In more concrete terms, each node of G might represent a radio transmission in a wireless communication network; the edges of G represent interference between radio transmissions. Each radio transmission needs to be active for 1 time unit in total; an optimal fractional graph coloring provides a minimum-length schedule (or, equivalently, a maximum-bandwidth schedule) that is conflict-free.
If one further required that each node must be active continuously for 1 time unit (without switching it off and on every now and then), then traditional graph vertex coloring would provide an optimal schedule: first the nodes of color 1 are active for 1 time unit, then the nodes of color 2 are active for 1 time unit, and so on. Again, at any point in time, the set of active nodes is an independent set.
In general, fractional graph coloring provides a shorter schedule than non-fractional graph coloring; there is an integrality gap. It may be possible to find a shorter schedule, at the cost of switching devices (such as radio transmitters) on and off more than once.